package cn.org.eshow.service;

import cn.org.eshow.bean.query.AddressQuery;
import cn.org.eshow.common.page.Page;
import cn.org.eshow.model.Address;
import cn.org.eshow.model.User;

import javax.jws.WebService;
import java.util.List;

@WebService
public interface AddressManager extends GenericManager<Address, Integer> {

    List<Address> list(AddressQuery query);

    Page<Address> search(AddressQuery query);

    Address check(AddressQuery query);

    /**
     * 保存地址
     *
     * @param address 用户地址
     * @param user    用户
     * @return 地址
     */
    Address save(Address address, User user);

    /**
     * 更新用户地址
     *
     * @param old     旧用户地址
     * @param address 新用户地址
     * @param user    用户
     * @return 小区地址
     */
    Address update(Address old, Address address, User user);

    /**
     * 删除地址
     * @param old 旧用户地址
     * @return 地址
     */
    Address enabled(Address old);

}